/**
 * Vuex 插件，其本质上是一个函数，它接收 store 作为唯一参数
 * @param {*} store
 */
const savePlugin = store => {
  // 订阅 store 中 mutation 的提交。
  // 当有提交 mutation 时，就会执行
  // subscribe 所注册的回调函数
  store.subscribe((mutation, state) => {
    console.log('执行到插件中...', mutation, state)
    localStorage.setItem('cart', JSON.stringify(state.cart.list))
  })
}

// 导出插件
export default savePlugin
